import type { IPaginationQuery } from './common.type';

/**
 * 审计日志实体
 */
export interface IAuditLog {
  id: string;
  userId?: string | null;
  username?: string | null;
  module?: string | null;
  operationType: number;
  description?: string | null;
  method?: string | null;
  path?: string | null;
  params?: string | null;
  body?: string | null;
  statusCode?: number | null;
  response?: string | null;
  errorMsg?: string | null;
  ip?: string | null;
  userAgent?: string | null;
  duration?: number | null;
  createdBy?: string | null;
  createdAt?: string | null;
}

/**
 * 查询审计日志请求参数
 */
export interface IQueryAuditLog extends IPaginationQuery {
  username?: string;
  module?: string;
  operationType?: number;
  method?: string;
  path?: string;
  ip?: string;
  startDate?: string;
  endDate?: string;
}

